import java.util.Scanner;

import static java.lang.Math.pow;
import static jdk.nashorn.internal.objects.NativeMath.sqrt;
import static jdk.nashorn.internal.runtime.ScriptObject.isArray;

public class Test {

    public static void main(String[] args) {
     //   System.out.println(isPalindrome(10100101));

    }
    //通过取整和取余操作获取整数中对应的数字进行比较。

    public static boolean isPalindrome4(int x) {
        if (x<0) {
            return false;
        }
        if (x<10) {
            return true;
        }
        if (x % 10 == 0) {
            return false;
        }
        int p=x;//拷贝x
        int count=0;
        while ((p/=10)!=0) {
            count++;
        }
        p=x;
        int p1=0;
        int p2=0;
        int flog=0;
        while (p!=0) {
            p1=p/(int)pow(10,count);
            p2=p%(int)pow(10,1);
            p=p%(int)pow(10,count);
            p=p/10;
            count-=2;
            if (p1!=p2) {
                flog=-1;
                break;
            }
        }
        if (flog==-1) {
            return false;
        }
        return true;
    }

    public static boolean isPalindrome3(int x) {

        if (x<0) {
            return false;
        }
        if (x<10) {
            return true;
        }
        if (x % 10 == 0) {
            return false;
        }
        int p=x;//x的临时变量
        int p1=0;//用来保存
        int sum=0;
        while (p>sum) {
            p1=p%10;
            sum=sum*10+p1;
            p/=10;
        }
        return p == sum || p == sum / 10;
    }

    //反转一半数字
    public static boolean isPalindrome2(int x) {
        int count=0;//记录位数
        if(x<0) {
            return false;
        } else if(x<10) {
            return true;
        }
        int p=x;//拷贝x
        while(p!=0) {
            p/=10;
            count++;
        }
        p=x;
        //原数字减去一半的位数就是剩下的值，在进行逆置，最后对比
        p%=(int) pow(10,count/2 );
        //求P的 位数，如果小于count/2，那就前面补个0
        int z=p;
        int count1=0;
        while(z!=0) {
            count1++;
            z/=10;
        }
        if(count1!=count/2) {
            x=count%2==0?(x/=(int)pow(10,count/2)):(x/=(int)pow(10,count/2+1));
String q=String.valueOf(p);
            for (int i = 0; i < count/2-count1; i++) {

                q='0'+q;
            }
            System.out.println(q);

            return new StringBuilder(q).reverse().toString().equals(String.valueOf(x));

        }
        x=count%2==0?(x/=(int)pow(10,count/2)):(x/=(int)pow(10,count/2+1));


        return new StringBuilder(String.valueOf(p)).reverse().toString().equals(String.valueOf(x));

    }
   // 给你一个整数 x ，如果 x 是一个回文整数，返回 true ；否则，返回 false 。
//   public boolean isPalindrome(int x) {
//       return new StringBuilder(String.valueOf(x)).reverse().toString().equals(String.valueOf(x));
//   }

//    public boolean isPalindrome(int x) {
//        String s1 = String.valueOf(x);
//        char[] ch = s1.toCharArray();
//        int left=0;
//        int right=ch.length-1;
//        while(left<right) {
//            if(ch[left]!=ch[right]) {
//                return false;
//            }
//        }
//        return true;
//    }
    public int[] twoSum1(int[] nums, int target) {
        for (int i = 0; i <nums.length-1 ; i++) {
            for (int j = 1+i; j <nums.length ; j++) {
                if(nums[i]+nums[j]==target) {
                    int[]arr={i,j};
                    return arr;
                }
            }
        }
        return nums;
    }
//    public static void main(String[] args) {
//        //给定一个整数数组 nums 和一个整数目标值 target，
//        // 请你在该数组中找出 和为目标值 target  的那 两个 整数，并返回它们的数组下标。
//
//    }
   // 统计字符串中的单词个数，这里的单词指的是连续的不是空格的字符。
   public static void main1(String[] args) {
        String p=new String("Hello, my name is John");
        String[]p1=p.split(" ");
       System.out.println(p1.length);
   }
}
